<style>
    #scroller {
        height: 1000px;
    }
</style>
<script>
    if (window.testRunner) {
        testRunner.dumpAsText();
        testRunner.waitUntilDone();
    }

    const moveMouseToCenterOfElement = element => {
        const clientRect = element.getBoundingClientRect();
        const centerX = (clientRect.left + clientRect.right) / 2;
        const centerY = (clientRect.top + clientRect.bottom) / 2;
        if (window.eventSender)
          eventSender.mouseMoveTo(centerX, centerY);
    };

    function run()
    {
        window.scrollBy(0, 1000);
        // Drop a file on a file input control.
        if (window.eventSender) {
            eventSender.beginDragWithFiles(["resources/abe.png"]);
            var fileInput = document.getElementById('file');
            moveMouseToCenterOfElement(fileInput);
            eventSender.mouseUp();
        }
    }

    function fileDropped(t)
    {
        if (window.testRunner) {
          testRunner.notifyDone();
        }
    }
</script>
<body onload="run()">
<div id="scroller"></div>
<input type="file" id="file" onchange="fileDropped(this)">
This is a test for https://bugs.webkit.org/show_bug.cgi?id=29276. It passes if it does not crash. If not run from DRT, drag a file onto the file input.
</body>
